跳到主要内容

Swift 可选类型

阐述

可选类型是指可以取值为该类型,也可以为 nil。可选类型用 T? 标注。

在代码中处理可选类型的方法:

  • if value != nil
  • 使用 Optional Chaining (?.)
  • 提供默认值(a ?? b
  • 结束程序(a!

Optional Binding

可以在 if, guard, while 等语句中通过 let a = optionalB 的语法来创建一个临时的变量,另外特别地,可以用 let a 来将新的变量设为同一名字。

实例

从字符串获取整数将返回一个可选类型:

let possibleNumber = "123"
let convertedNumber = Int(possibleNumber)
// The type of convertedNumber is "optional Int"

Optional Binding

if let actualNumber = Int(possibleNumber) {
print("The string \"\(possibleNumber)\" has an integer value of \(actualNumber)")
} else {
print("The string \"\(possibleNumber)\" couldn't be converted to an integer")
}
// Prints "The string "123" has an integer value of 123"

if let myNumber {
// Here, myNumber is a non-optional integer
print("My number is \(myNumber)")
}
// Prints "My number is 123"

性质

相关内容

参考文献